home *** CD-ROM | disk | FTP | other *** search
- Subject: repl
- Date: Fri, 01 Jul 1994 11:13:04 +1000
- From: Warwick Allison <warwick@cs.uq.oz.au>
- Precedence: bulk
-
-
- Annius Groenink:
- >Leaving the right mouse button free is not necessary as MTOS and WINX
- >allow using the left mouse button in background windows.
-
- Normal TOS does too. NOWHERE does GEM insist that you treat a TOPPED
- message as something that MUST top your window. Events in GEM are
- advisory only. When GEM++ receives a TOPPED message, it uses the mouse
- coordinates of the message as a click. If the click is not on anything
- interesting, it just does a TOP, otherwise, it leaves the window untopped
- and performs the operation. Any program that has a Toolbox and a Document
- Window appreciates this behaviour. PageStream and Calamus do it, of course,
- and I noticed that the new version of Kandinsky does also.
-
- I'm amazed how few programs use this feature. GEM++ adopts the attitude
- that ANYTHING can happen on backgrounded windows. It takes great care to
- do efficient object scrolling, even if that object is partially obscured.
-
- The top-window-is-active model is tiresome. We have to put up with it for
- keyboard in most cases (although GEM++ gets around this by allowing
- click-to-type on backgrounded editable text fields).
-
-
- Craig.Graham@newcastle.ac.uk wrote:
-
- >A shame GEM
- >only provides two rectangle events - a rectangle list for event_multi()
- >would solve this problem
-
- Unfortunately, it wouldn't. What rectangles would you use? One for
- every object? That's too inefficient. objc_find() uses the
- hierarchical structure of objects to provide for VERY efficient
- rectangle tracking. event_multi() would have to take a list of FORMS
- to be efficient. This is also how it would be provided by a library.
- I just don't see it as warranted, since not all s/w will implement
- object tracking, and hence the GUI would be more inconsistent.
-
- If this list considers rectangle/object tracking should be part of the
- standard, then I'll gladly follow it (since many progs would then have
- this consistent tracking feature). But it would have to be implemented
- correctly (ie. not busy wait), and as one of the major ST softwares,
- Calamus, doesn't bother to do it correctly (they use busy-wait), I
- don't see much hope for it. [This is no comment against Calamus. They
- could have just not given use all the neat features provided by
- rectangle tracking, such as short-cut identification, continuous help,
- cursor change in windows, etc. - I'd rather have those features in a
- large product like Calamus, even if it does cost mtasking]
-
-
- >I personally never use form_button or form_keybd at all........you can
- >get along quite easily without them - check out the fully non-modal GUI
- >in CLA for an example of this.
-
- Indeed, the more specialized a library is, the less likely it is to call
- these. For form_keybd, the default keyboard handling is terrible, so
- often replaced. Neither do clipping either. If LTMF-2 can provide this
- advanced keyboard handling, I'll gladly leave it out of GEM++.
-
-
- >Take the argument to private email ...
- Apologies.
-
- --
- Warwick
-